// ==UserScript==
// @name         deepseek
// @namespace    https://www.wjx.cn/vm/Q0keWJw.aspx#
// @version      1.0
// @description  自动填写问卷并提交，支持不断刷新和自动答题
// @author       Your Name
// @match        *://*.wjx.cn/*  // 替换为问卷星的实际域名
// @grant        none
// ==/UserScript==

(function () {
    'use strict';

    // 定义每个题目的概率分布
    const questionProbabilities = {
        // 专业类别
        q1: [
            { value: '理工类', probability: 0.42 },
            { value: '经管类', probability: 0.28 },
            { value: '人文社科类', probability: 0.19 },
            { value: '艺术类', probability: 0.11 }
        ],
        // 学历层次
        q2: [
            { value: '本科', probability: 0.53 },
            { value: '硕士研究生', probability: 0.37 },
            { value: '博士研究生在读', probability: 0.10 }
        ],
        // 是否参与过AI技术相关的课程或实践
        q3: [
            { value: '是', probability: 0.58 },
            { value: '否', probability: 0.42 }
        ],
        // 对AI技术的了解程度（1-5分）
        q4: [
            { value: '1', probability: 0.12 },
            { value: '2', probability: 0.23 },
            { value: '3', probability: 0.31 },
            { value: '4', probability: 0.22 },
            { value: '5', probability: 0.12 }
        ],
        // AI技术对大学生就业的影响
        q5: [
            { value: '积极影响为主', probability: 0.33 },
            { value: '消极影响为主', probability: 0.19 },
            { value: '利弊参半', probability: 0.41 },
            { value: '不清楚', probability: 0.07 }
        ],
        // 因AI技术发展对自身未来就业感到焦虑（1-5分）
        q6: [
            { value: '1', probability: 0.17 },
            { value: '2', probability: 0.26 },
            { value: '3', probability: 0.29 },
            { value: '4', probability: 0.18 },
            { value: '5', probability: 0.10 }
        ],
        // 对未来职业发展的长期信心（1-5分）
        q7: [
            { value: '1', probability: 0.11 },
            { value: '2', probability: 0.22 },
            { value: '3', probability: 0.33 },
            { value: '4', probability: 0.24 },
            { value: '5', probability: 0.10 }
        ],
        // 受AI冲击最大的行业（多选）
        q8: [
            { value: '制造业', probability: 0.55 },
            { value: '金融业', probability: 0.45 },
            { value: '教育行业', probability: 0.38 },
            { value: '媒体/内容创作', probability: 0.42 },
            { value: '医疗健康', probability: 0.32 },
            { value: '法律行业', probability: 0.25 },
            { value: '其他', probability: 0.12 }
        ],
        // 对就业威胁最大的AI技术（单选）
        q9: [
            { value: '生成式AI', probability: 0.38 },
            { value: '自动化机器人', probability: 0.31 },
            { value: '智能决策系统', probability: 0.21 },
            { value: '计算机视觉技术', probability: 0.06 },
            { value: '其他', probability: 0.04 }
        ],
        // AI时代最需要强化的能力（多选）
        q10: [
            { value: '数据分析', probability: 0.75 },
            { value: '编程', probability: 0.65 },
            { value: '创造性思维', probability: 0.80 },
            { value: '人际沟通', probability: 0.50 },
            { value: '跨领域学习', probability: 0.70 },
            { value: '其他', probability: 0.15 }
        ],
        // 是否因AI技术调整过职业规划
        q11: [
            { value: '是', probability: 0.43 },
            { value: '否', probability: 0.57 }
        ],
        // 是否主动学习过AI相关技能
        q12: [
            { value: '是', probability: 0.52 },
            { value: '否', probability: 0.48 }
        ],
        // 应对AI就业挑战的策略（多选）
        q13: [
            { value: '学习AI技术', probability: 0.75 },
            { value: '转向AI难以替代的领域', probability: 0.55 },
            { value: '提升复合型能力', probability: 0.80 },
            { value: '创业或自由职业', probability: 0.30 },
            { value: '其他', probability: 0.15 }
        ],
        // 希望学校提供的AI相关支持（多选）
        q14: [
            { value: '开设AI通识课程', probability: 0.80 },
            { value: 'AI与专业结合的实践项目', probability: 0.70 },
            { value: 'AI技术讲座/培训', probability: 0.60 },
            { value: 'AI工具使用指导', probability: 0.50 },
            { value: '其他', probability: 0.20 }
        ],
        // 政府/学校应为应对AI就业冲击提供的支持（多选）
        q15: [
            { value: '培训补贴', probability: 0.75 },
            { value: '失业保障机制', probability: 0.60 },
            { value: '校企AI实训', probability: 0.55 },
            { value: 'AI伦理教育', probability: 0.40 },
            { value: '其他', probability: 0.18 }
        ],
        // 企业招聘是否会提高对AI技能的要求
        q16: [
            { value: '会显著提高', probability: 0.45 },
            { value: '会略微提高', probability: 0.50 },
            { value: '无明显变化', probability: 0.03 },
            { value: '不确定', probability: 0.02 }
        ],
        // AI技术对未来就业的最大威胁
        q17: [
            { value: '岗位减少', probability: 0.45 },
            { value: '技能淘汰', probability: 0.35 },
            { value: '竞争加剧', probability: 0.25 },
            { value: '其他', probability: 0.05 }
        ]
    };

    // 根据概率分布选择一个选项
    function selectOption(options) {
        const random = Math.random();
        let cumulativeProbability = 0;

        for (const option of options) {
            cumulativeProbability += option.probability;
            if (random < cumulativeProbability) {
                return option.value;
            }
        }
    }

    // 根据概率分布选择多个选项（多选）
    function selectMultipleOptions(options) {
        const selectedOptions = [];
        for (const option of options) {
            if (Math.random() < option.probability) {
                selectedOptions.push(option.value);
            }
        }
        return selectedOptions;
    }

    // 填写问卷
    function fillQuestionnaire() {
        // 填写单选题
        for (const key in questionProbabilities) {
            const options = questionProbabilities[key];
            const selectedValue = selectOption(options);

            // 找到对应的输入元素并设置值
            const inputElement = document.querySelector(`input[value="${selectedValue}"]`);
            if (inputElement) {
                inputElement.click();
            }
        }

        // 填写多选题
        const multiChoiceQuestions = ['q8', 'q10', 'q13', 'q14', 'q15'];
        for (const key of multiChoiceQuestions) {
            const options = questionProbabilities[key];
            const selectedValues = selectMultipleOptions(options);

            // 找到对应的输入元素并设置值
            for (const value of selectedValues) {
                const inputElement = document.querySelector(`input[value="${value}"]`);
                if (inputElement) {
                    inputElement.click();
                }
            }
        }

        // 提交问卷
        const submitButton = document.querySelector('input[type="submit"]');
        if (submitButton) {
            submitButton.click();
        }

        // 刷新页面，继续答题
        setTimeout(() => {
            window.location.reload();
        }, 3000); // 3秒后刷新页面
    }

    // 延迟执行，确保页面加载完成
    setTimeout(fillQuestionnaire, 2000);
})();